﻿using System.Runtime;

namespace System.Globalization
{
    [NonScript]
    public class CultureInfo : ICloneable, IFormatProvider
    {
        public static CultureInfo CurrentCulture
        {
            [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
            get { return null; }
        }

        public static CultureInfo CurrentUICulture
        {
            [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
            get { return null; }
        }

        public static CultureInfo InstalledUICulture
        {
            get { return null; }
        }

        public static CultureInfo DefaultThreadCurrentCulture
        {
            get { return null; }
            set { }
        }

        public static CultureInfo DefaultThreadCurrentUICulture
        {
            get { return null; }
            set { }
        }

        public static CultureInfo InvariantCulture
        {
            [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
            get { return null; }
        }

        public virtual CultureInfo Parent
        {
            get { return null; }
        }

        public virtual int LCID
        {
            [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
            get { return 0; }
        }

        public virtual int KeyboardLayoutId
        {
            get { return 0; }
        }

        public virtual string Name
        {
            get { return null; }
        }

        public string IetfLanguageTag
        {
            get { return null; }
        }

        public virtual string DisplayName
        {
            get { return null; }
        }
        public virtual string NativeName
        {
            get { return null; }
        }

        public virtual string EnglishName
        {
            get { return null; }
        }

        public virtual string TwoLetterISOLanguageName
        {
            get { return null; }
        }

        public virtual string ThreeLetterISOLanguageName
        {
            get { return null; }
        }

        public virtual string ThreeLetterWindowsLanguageName
        {
            get { return null; }
        }

        public virtual bool IsNeutralCulture
        {
            get { return false; }
        }

        public bool UseUserOverride
        {
            get { return false; }
        }

        public bool IsReadOnly
        {
            [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            get { return false; }
        }

        [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
        public CultureInfo(string name)
            : this(name, true)
        {
        }

        public CultureInfo(string name, bool useUserOverride)
        {

        }

        [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
        public CultureInfo(int culture)
            : this(culture, true)
        {
        }

        public CultureInfo(int culture, bool useUserOverride)
        {
        }

        public static CultureInfo CreateSpecificCulture(string name)
        {
            return null;
        }

        public override bool Equals(object value)
        {
            return false;
        }

        [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

        public virtual object GetFormat(Type formatType)
        {
            return null;
        }

        public void ClearCachedData()
        {
        }

        public CultureInfo GetConsoleFallbackUICulture()
        {
            return null;
        }

        public virtual object Clone()
        {
            return null;
        }

        public static CultureInfo ReadOnly(CultureInfo ci)
        {
            return null;
        }

        public static CultureInfo GetCultureInfo(int culture)
        {
            return null;
        }

        public static CultureInfo GetCultureInfo(string name)
        {
            return null;
        }

        public static CultureInfo GetCultureInfo(string name, string altName)
        {
            return null;
        }

        public static CultureInfo GetCultureInfoByIetfLanguageTag(string name)
        {
            return null;
        }
    }
}
